package com.lutzyt.delivery.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lutzyt.delivery.bean.OrderItem;

import java.util.List;

/**
 *
 * @author zyt
 */
public interface OrderItemService extends IService<OrderItem> {

  /**
   * 通过ID查询单个
   *
   * @param id ID
   * @return {@link OrderItem}
   */
  OrderItem findById(Integer id);

  /**
   * 分页查询
   *
   * @param pageNum  页号
   * @param pageSize 每页大小
   * @param orderId 订单id
   * @return {@link OrderItem}
   */
  Page<OrderItem> findByPage(int pageNum, int pageSize, int orderId);

  /**
   * 新增
   *
   * @param orderItem
   */
  void insert(OrderItem orderItem);

  /**
   * 修改
   *
   * @param orderItem
   */
  void update(OrderItem orderItem);

  /**
   * 通过ID删除单个
   *
   * @param id ID
   */
  void deleteById(Integer id);

  /**
   * 根据订单查询
   * @param id
   * @return
   */
  List<OrderItem> findByOrderId(Integer id);

  /**
   * 根据订单分页
   * @param id
   * @param pageSize
   * @param pageNum
   * @return
   */
  Page<OrderItem> pageByOrderId(Integer id, Integer pageSize, Integer pageNum);
}